#include<iostream>
using namespace std;
#include<stack>
class SortedStack {
public:
    stack<int> sta, help;
    SortedStack() {}
    void push(int val) {
        if (sta.empty() || val < sta.top()) {
            sta.push(val);
            return;
        }
        while (!sta.empty() && sta.top() < val) {
            help.push(sta.top());
            sta.pop();
        }
        sta.push(val);
        while (!help.empty()) {
            sta.push(help.top());
            help.pop();
        }
    }

    void pop() {
        if (!sta.empty())
            sta.pop();
    }

    int peek() {
        if (sta.empty())
            return -1;
        return sta.top();
    }

    bool isEmpty() {
        return sta.empty();
    }
};